在命令列界面裡,純文字是指 ASCII 碼,單調單純到不行,但想要表示強調些字或圖,這些原來是代表文字的ASCII的各素,就可以變成一個大圖或大字的元素,要一個個去拚出來太慢,於是就有怎麼寫大字的工具,下個指令大字就出現了。
在最早的 Unix 環境裡,總會用到 telnet 或 ssh 或從 console 端登入系統,那時還未有圖形界面之時,只有一個 login: 的登入畫面有點單調,就希望能夠有些字來提示些事情。但字小小的不顯眼,就希望能有大大的字,於是就有 banner 這個工具,很快就可以寫出大字:
$ banner ithelp
* * **
* * * *
* * *
** **** * *** **** * * ***
* * ** * * * * ** *
* * * * ****** * * *
* * * * * * ** *
* * * * * * * * * ***
***** ** * * **** ***** *
*
*
老工具:banner
這沒有其他參數執行下,預設用 * 來畫出大字。看看 banner -h 可以下什麼參數?
usage: banner [option] [text ...]
-c, --use-char=CHARACTER use CHARACTER to draw the letters
-C, --center center the text on each line
-f, --font=FONT 1=default font, 2=smaller font
-h, --help display this help and exit
-l, --use-letters use individual characters to draw letters
-V, --version output version information and exit
-w, --width=COLS set max column width to COLS
Reads from stdin if no text is given.
分別可以指定什麼什麼字元來畫字(-c)、把畫出的結果置中(-C)、指定畫出預設或較小的字型(-f)、畫個別字用個別的字元當元素畫出(-l)、設定輸出的最大欄位寬度(-w)。
$ banner -c $ ithlep
$ $ $$
$ $ $ $
$ $ $
$$ $$$$ $ $$$ $$$$ $ $ $$$
$ $ $$ $ $ $ $ $$ $
$ $ $ $ $$$$$$ $ $ $
$ $ $ $ $ $ $$ $
$ $ $ $ $ $ $ $ $ $$$
$$$$$ $$ $ $ $$$$ $$$$$ $
$
$
$ banner -l ithelp
t h ll
i t h l
t h l
ii tttt h hhh eeee l p ppp
i t hh h e e l pp p
i t h h eeeeee l p p
i t h h e l pp p
i t t h h e e l p ppp
iiiii tt h h eeee lllll p
p
p
$ banner -C ithelp
* * **
* * * *
* * *
** **** * *** **** * * ***
* * ** * * * * ** *
* * * * ****** * * *
* * * * * * ** *
* * * * * * * * * ***
***** ** * * **** ***** *
*
*
這種可以用最少的力氣,可以畫出很大的字,用起來就很過癮。但是能不能寫中文字呢?能寫中文字才酷。
其實也是有的,查了一下,在本站裡早已有大大發表了這一篇 [Reply] 利用倚天字型畫中文 ascii art (文字畫),裡面介紹的 cbanner,就是對應當時寫英文大字而開發的可以畫中文大字,要用到古老的倚天字型,又要在 big5 的環境才畫得出,可能要準備好同樣的環境條件較麻煩些。在此就不重覆這議題了。
這個非常傳統的套件各大 Linux 的版本一定會有,但是否預設就安裝進系統就不一定。下套件的安裝指令就可輕鬆安裝起來。
明天繼續相對於此傳統 banner 的新工具!